package cn.edu.lingnan.service.base;

import java.util.List;
import java.util.Map;
import java.util.Optional;

public interface BaseService<T,ID> {

    //分页条件查
    Map<String, Object> page(int pageNum, int pageSize,String entity);

    //分页条件查询
    Map<String,Object> page(int pageNum, int pageSize, T entity);

    //分页条件查询
    Map<String,Object> page(int pageNum, int pageSize);


    //查询所有
    List<T> selectAll();

    //根据主键查询
    Optional<T> selectById(ID id);

    //保存
    T save(T entity);

    //批量更新
    List<T> saveBatch(List<T> entity);

    //根据ID删
    void deleteById(ID id);

    ////批量删除
    //void deleteBatch(List<ID> list);

    //批量删除
    void deleteBatch(ID[] ids);

    //更新
    T update(T entity, ID id);

}
